package com.icloud.system.boot.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.icloud.auth.api.vo.Oauth2TokenVo;
import com.icloud.common.core.api.CommonResult;
import com.icloud.common.database.model.AppCustomerAuth;
import com.icloud.common.web.domain.UserDto;

public interface AppCustomerAuthService extends IService<AppCustomerAuth> {
    /**
     * 前台账号登录
     * @param username 用户名
     * @param password 密码
     */
    CommonResult<Oauth2TokenVo> appCustomerLogin(String username, String password);

    CommonResult<Boolean> appCustomerLogout();

    /**
     * 根据username查询客户信息
     * @param username
     * @return
     */
    UserDto loadCustomerByUsername(String username);

    Long findCustomerByMnemonics(String mnemonics);

    /**
     * 修改账号登录密码
     */
    boolean updatePasswordById(Long accountId, String newPassword);

    /**
     * 重置账号登录密码
     */
    boolean resetPasswordById(Long accountId, String mnemonic, String newPassword);

    /**
     * 修改账号交易密码
     */
    boolean updateTxPasswordById(Long accountId, String newPassword);
}
